//
// Created by zhupi on 2024/10/1.
//

#ifndef DEMO2_MESSAGE_ITEM_WIDGET_H
#define DEMO2_MESSAGE_ITEM_WIDGET_H

#include <QWidget>

#include <QWidget>
#include <QVBoxLayout>
#include <QHBoxLayout>
#include <QIcon>
#include <QMessageBox>
#include <QToolButton>
#include "message_List_widget.h"

class MessageItemWidget  : public QWidget{
    Q_OBJECT
public:
    explicit MessageItemWidget(const QString &title, QWidget *parent = nullptr);
    ~MessageItemWidget() {}

    void Initial();
    // 查找信息，并使界面跳转到对应的位置(往下查找）
    bool SearchMessage(const QString &searchTerm) ;
    //  查找信息，(往上查找）
    bool SearchPrevMessage(const QString &searchTerm);
    // 高亮所有匹配到的信息， 返回值是查找到数据的总数
    int HighlightMatchingItems(const QString& searchString);
    // 刷新查找
    void UpdateSearch();
    // 添加消息
    void AddMessage(const QString &type, const QString &message) ;
    // 删除选中消息
    void DeleteSelectedMessage();
//    //
//    void FindMessage(const QString &msg);
    // 根据名称进行删除
    void DeleteMessage(const QString &itme);

    // test
    void Test();

signals:
    void PositionChangeSg(const QPoint &point);

private:
    MessageListWidget *messageListWidget_ {nullptr};
    QFrame *contentFrame_ {nullptr};  // 外层边框
    QToolButton *toggleButton_ {nullptr};
};


#endif //DEMO2_MESSAGE_ITEM_WIDGET_H
